<template>
    <van-nav-bar title="申请退货" left-text="" left-arrow @click-left="goBack" />
    <section class="aui-flexView">
        <!-- 订单详细 -->
        <section class="aui-scrollView">
            <!-- 订单状态 -->
            <div class="aui-pay-change">
                <div class="aui-flex">
                    <div class="aui-flex-box">
                        <h3>{{ detail.status_text }}</h3>
                    </div>
                    <div class="aui-pay-zfb">
                        <img src="/assets/images/icon-zfb.png" alt="" />
                    </div>
                </div>
            </div>

            <!-- 收货地址 -->
            <div class="aui-flex">
                <div class="aui-flex-add">
                    <img :src="LoginUser.avatar" alt="" />
                </div>
                <div class="aui-flex-box">
                    <h3>
                        {{ detail.consignee }} <em> {{ detail.mobile }}</em>
                    </h3>
                    <p>{{ detail.region_text }}</p>
                </div>
            </div>

            <!-- 退货信息 -->
            <van-form @submit="onSubmit">
                <van-cell-group inset>
                    <van-field v-model="status_text" is-link readonly name="picker" label="退款原因" placeholder="点击选择退款原因"
                        @click="showPicker = true" />
                    <van-popup v-model:show="showPicker" position="bottom">
                        <van-picker :columns="columns" @confirm="onConfirm" @cancel="showPicker = false" />
                    </van-popup>
                    <van-field v-model="refundreason" rows="2" autosize label="退货原因" type="textarea" maxlength="120"
                        placeholder="请输入退货原因" show-word-limit />
                </van-cell-group>
                <div style="margin: 16px;">
                    <van-button round block type="primary" native-type="submit">
                        提交
                    </van-button>
                </div>
            </van-form>

        </section>
    </section>
</template>
<script setup>
const router = useRouter();
const route = useRoute();
const goBack = () => {
    history.back()
}
const orderid = ref(route.query.orderid ?? 0)
const detail = ref({})
const { cookies } = useCookies();
const LoginUser = reactive(cookies.get("LoginUser") ?? {});
const refundreason = ref('')
const showPicker = ref(false);
const status_text = ref('')
const status = ref('')
const columns = [
    { text: '仅退款', value: '-1' },
    { text: '退款退货', value: '-2' }
];

const onConfirm = ({ selectedOptions }) => {
    status_text.value = selectedOptions[0]?.text;
    status.value = selectedOptions[0]?.value;
    showPicker.value = false;
};
onBeforeMount(() => {
    getInfoData()
})
const getInfoData = async () => {
    let result = await Api.orderInfo({
        busid: LoginUser.id,
        orderid: orderid.value,
    });
    if (result.code == 1) {
        detail.value = result.data
    }
}
const onSubmit = async () => {
    let result = await Api.orderRefund({
        busid: LoginUser.id,
        orderid: orderid.value,
        status: status.value,
        refundreason: refundreason.value,
    })
    if (result.code == 1) {
        showSuccessToast({
            message: result.msg,
            onClose: function () {
                goBack()
            },
        });
    } else {
        showFailToast(result.msg);
    }
}
</script>
<style>
@import url('/assets/css/info.css');
</style>